package sessionBeanTest;

import static org.junit.Assert.*;

import java.util.ArrayList;
import java.util.List;

import interfaceBeanRemote.SessionInvestisseurRemote;
import interfaceBeanRemote.sessionClubRemote;

import javax.naming.Context;
import javax.naming.InitialContext;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;


import entityBean.Club;
import entityBean.Investisseur;

public class ClubTest2 {
	Context ctx3;
	sessionClubRemote clubBean;
	SessionInvestisseurRemote investisseurBean;
	
	@Before
	public void setUp() throws Exception {

		ctx3= new InitialContext();

		ctx3.addToEnvironment(InitialContext.INITIAL_CONTEXT_FACTORY,"org.jnp.interfaces.NamingContextFactory");
		ctx3.addToEnvironment(InitialContext.URL_PKG_PREFIXES,"org.jboss.naming:org.jnp.interfaces");
		ctx3.addToEnvironment(InitialContext.PROVIDER_URL,"jnp://localhost:1099");
		clubBean=(sessionClubRemote) ctx3.lookup("sessionClub/remote");
		investisseurBean=(SessionInvestisseurRemote) ctx3.lookup("SessionInvestisseur/remote");
	}

	@After
	public void tearDown() throws Exception {
	}

	@Test
	public void testGetClubListWithMembre(){
	
		
	 	Investisseur investisseur = new Investisseur();
		investisseur.setNom("investisseur");
		investisseurBean.addInvestisseur(investisseur);
		
		Club club =new Club();
		club.setNom("clubListWithMembre");
		clubBean.addClub(club);
		
		Club club5 = clubBean.findClub(1);
		Investisseur investisseur2 = investisseurBean.findInvestisseur(1);
		System.out.println(club5.getNom());
		
		ArrayList <Investisseur> investisseurs = new ArrayList<Investisseur>();
		investisseurs.add(investisseur2);
		club5.setInvestisseurs(investisseurs);
		
		
		investisseur2.setClub(club5);
		
		System.out.println(investisseur2.getNom());
		
		investisseurBean.updateInvestisseur(investisseur2);
		
		Club club6=clubBean.findClub(1);
		assertEquals("investisseur",club6.getInvestisseurs().get(0).getNom());
		
	}
}
